home *** CD-ROM | disk | FTP | other *** search
- /* thaw
- * Fri Jun 30 14:19:02 PDT 1989
- *
- * equally spaced wires in world space.
- */
- #define HALF 0.5
-
- surface
- RCWire( float hwidth=0.0075,smult = 1.0,tmult = 1.0;)
- {
- float rim;
- float s_mid,t_mid,mid;
- color C;
- float val;
-
- rim = 2*hwidth;
-
- C = Cs;
-
- s_mid = length(dPdu)*(HALF - abs(mod(s*smult,1.0) - HALF))/smult;
- t_mid = length(dPdv)*(HALF - abs(mod(t*tmult,1.0) - HALF))/tmult;
- mid = (s_mid > t_mid) ? t_mid : s_mid;
-
- Oi = 0.0;
- if (mid < hwidth)
- Oi = 1.0;
- else if ( mid < (hwidth+rim))
- Oi = (1.0-smoothstep(0.0,1.0,(mid-hwidth)/rim));
-
- Ci = Oi * C;
- }
-